Skip to content

字符串操作

字符串初始化

py
name = 'Oldmoon' #可以使用单引号或者双引号来初始字符串

字符串访问

字符串可以像列表一样,使用[索引 index]的方式来访问其中的每一个字符,左边从 0 开始,右边从-1 开始。也可以使用切片访问。

别忘了切片左闭右开

切片一定要记住左闭右开的原则,这是初学者最容易犯错的地方!

例如name[0:3],只能从第 0 个元素开始,取到第 3 个元素的前面一个元素,也就是第 2 个元素,最终只能取到第 0,1,2 个元素,而不能取到第 3 个元素!

py
name = 'Oldmoon'
print(name[0]) #输出O
print(name[-1]) #输出n
print(name[0:3]) #输出Old`

当然也可以使用循环,访问字符串的每一个字符。

py
name = '12345'
for i in name: #i还是字符串类型
  print(i)
py
name = '12345'
total = 0
for i in name: #求和时需要把i转换为整数类型
  total += int(i)
print(total)

字符串

py
name = 'Oldmoon'
print(name[0],name[-1],name[0:3])

程序会输出

[0/1]

字符串

py
name = '135'
total = 0
for i in name:
  total += int(i)
print(total)

程序会输出

[0/1]

字符串更新

字符串更新

字符串虽然可以像列表 list 一样来访问,但是不能像列表那样来修改其中的字符元素。例如以下代码就会报错,不允许修改。

py
name = 'Oldmoon'
name[0] = 'N'

那么字符串代码如何更新呢,有 2 种方法。

字符串拼接

使用加号+将未修改的字符串与修改的字符串进行拼接。

py
name = 'Hello'
print(name)
name = 'J' + name[1:] #'J' 拼接 name[1:],生成'Jello', 实现字符串更新
print(name)

字符串转列表再转字符串

将字符串转为列表 list,更新元素之后,再将列表 list 转回字符串。

py
name = 'Hello'
name = list(name)
name[0] = 'J' #将'H'改为'J'
print(name) #此时会输出['J', 'e', 'l', 'l', 'o'],还是列表,不符合字符串输出需求
name = ''.join(name) #使用字符串的join方法,转回字符串,后续会讲到
print(name) #输出Jello`

字符串

变量a='apple',以下哪个代码可以将a变成'bpple'?

[0/1]

字符串操作符

字符串的常见操作符主要有加号+、乘号*等,具体可参考列表 list 的操作符,基本是一致的。

py
name = 'Oldmoon'
greetings = 'Hello ' + name #加号+就是字符串拼接
triples = name*3  #乘号就是重复多次字符
print(greetings) #输出Hello Oldmoon
print(triples) #输出OldmoonOldmoonOldmoon
print('H' in greetings) #输出True
print('w' not in greetings) #输出True`

多行字符串

有的时候,字符串特别长,我们可以使用多行的方式(三个引号''')来输入,方便阅读。

py
string = '''This is an example
for the multiple lines.'''
print(string)

字符串

py
a = 'app'
b = 'hi ' + a
c = b*2
print(c)

程序会输出

[0/1]